#include <fstream>
#include "exceptions.h"
#include "FileUtil.h"

using namespace std;

FileUtil::FileUtil() {

}

string FileUtil::getFileExtension(string file) {
	size_t pos = file.find_last_of('.', file.size()) + 1;
	return file.substr(pos, file.size() - pos);
}

string FileUtil::getPathComponent(string file) {
	return file.substr(0, file.find_last_of("/"));
}

string FileUtil::getRelativePath(string file, string relative) {
	return getPathComponent(file) + "/" + relative.substr(2, relative.size() - 2);
}

bool FileUtil::isRelative(string file) {
	return file.substr(0, 2) == "//";
}

string FileUtil::getFileNameComponent(string file) {
	size_t pos = file.find_last_of("/") + 1;
	size_t size = file.size() - pos;
	return file.substr(pos, size);
}

FileUtil::~FileUtil() {
}
